HAL EXTI IO operation functions

This section provides information about the HAL EXTI IO operation functions migration.

Note

HAL EXTI IRQ handler

HAL1

HAL2

void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti);
void HAL_EXTI_IRQHandler(hal_exti_handle_t *hexti);

Related use case: Use case: Interrupt service routine


HAL EXTI get pending

The edge parameter is included in HAL_EXTI_GetPending in HAL1 but removed in HAL2.

HAL1

HAL2

uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti,
                             uint32_t Edge);
hal_exti_trigger_t HAL_EXTI_GetPending(const hal_exti_handle_t *hexti);

HAL EXTI clear pending

HAL1

HAL2

void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti,
                           uint32_t Edge);
void HAL_EXTI_ClearPending(const hal_exti_handle_t *hexti,
                           hal_exti_trigger_t edge);

HAL EXTI generate SWI

HAL1

HAL2

void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti);
hal_status_t HAL_EXTI_GenerateSWI(hal_exti_handle_t *hexti);

Related use case: Use case: Generate a software interrupt